$PBExportHeader$w_porcentaje.srw
$PBExportComments$Visualiza el Porcentaje realizado de un determinado proceso
forward
global type w_porcentaje from window
end type
type st_mensaje from statictext within w_porcentaje
end type
type sle_porcentaje from singlelineedit within w_porcentaje
end type
type sle_base from singlelineedit within w_porcentaje
end type
type st_porcentaje from statictext within w_porcentaje
end type
end forward

global type w_porcentaje from window
integer x = 834
integer y = 362
integer width = 1317
integer height = 435
boolean titlebar = true
windowtype windowtype = popup!
long backcolor = 79741120
st_mensaje st_mensaje
sle_porcentaje sle_porcentaje
sle_base sle_base
st_porcentaje st_porcentaje
end type
global w_porcentaje w_porcentaje

type variables
Integer		w_ancho, obj_ancho
end variables

forward prototypes
public subroutine wf_color_texto (integer red, integer green, integer blue)
public subroutine wf_color_porcentaje (integer red, integer green, integer blue)
public subroutine wf_porcentaje (real porcentaje, string mensaje)
public subroutine wf_borde (integer tipo)
public subroutine wf_porcentaje (real porcentaje)
public subroutine wf_porcentaje (string mensaje)
end prototypes

public subroutine wf_color_texto (integer red, integer green, integer blue);st_porcentaje.TextColor = RGB(red, green, blue)
end subroutine

public subroutine wf_color_porcentaje (integer red, integer green, integer blue);sle_porcentaje.BackColor = RGB(red,green,blue)
end subroutine

public subroutine wf_porcentaje (real porcentaje, string mensaje);//If porcentaje >= 100 Then 
//	sle_porcentaje.Width = obj_ancho
//	porcentaje = 100
//ElseIf porcentaje <= 0 Then
//	sle_porcentaje.Width = 0
//	porcentaje = 0
//Else
//	sle_porcentaje.Width = Integer( porcentaje * obj_ancho / 100)
//End If
wf_porcentaje(porcentaje)

//st_porcentaje.text = String(Integer(porcentaje)) + " %"
st_mensaje.text = mensaje

end subroutine

public subroutine wf_borde (integer tipo);Choose Case tipo
	Case 1
		sle_base.BorderStyle = StyleBox!
	Case 2
		sle_base.BorderStyle = StyleLowered!
	Case 3
		sle_base.BorderStyle = StyleRaised!
	Case 4
		sle_base.BorderStyle = StyleShadowBox!
End Choose
end subroutine

public subroutine wf_porcentaje (real porcentaje);If porcentaje >= 100 Then 
	sle_porcentaje.Width = obj_ancho
	porcentaje = 100
Elseif porcentaje <= 0 Then
	sle_porcentaje.Width = 0
	porcentaje = 0
	SetRedraw(True)
Else
	sle_porcentaje.Width = Integer( porcentaje * obj_ancho / 100)
End If

st_porcentaje.text = String(Integer(porcentaje)) + " %"


end subroutine

public subroutine wf_porcentaje (string mensaje);st_mensaje.text = mensaje

end subroutine

on w_porcentaje.create
this.st_mensaje=create st_mensaje
this.sle_porcentaje=create sle_porcentaje
this.sle_base=create sle_base
this.st_porcentaje=create st_porcentaje
this.Control[]={this.st_mensaje,&
this.sle_porcentaje,&
this.sle_base,&
this.st_porcentaje}
end on

on w_porcentaje.destroy
destroy(this.st_mensaje)
destroy(this.sle_porcentaje)
destroy(this.sle_base)
destroy(this.st_porcentaje)
end on

event open;Integer posx
This.Title = Message.StringParm

/* Tomo el porcentaje Actual  = 100 % */
obj_ancho = sle_porcentaje.Width
posx = sle_porcentaje.x

sle_porcentaje.Width = 0
sle_porcentaje.x = posx

This.wf_color_texto(120,120,250)  // Celeste
end event

type st_mensaje from statictext within w_porcentaje
integer x = 66
integer y = 256
integer width = 1148
integer height = 77
integer textsize = -10
integer weight = 400
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Arial"
long backcolor = 79741120
boolean enabled = false
boolean focusrectangle = false
end type

type sle_porcentaje from singlelineedit within w_porcentaje
integer x = 66
integer y = 147
integer width = 1145
integer height = 93
integer textsize = -10
integer weight = 400
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Arial"
long backcolor = 255
boolean border = false
boolean autohscroll = false
boolean displayonly = true
end type

type sle_base from singlelineedit within w_porcentaje
integer x = 59
integer y = 141
integer width = 1156
integer height = 106
integer textsize = -10
integer weight = 400
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Arial"
long textcolor = 16777215
long backcolor = 16777215
boolean autohscroll = false
borderstyle borderstyle = stylelowered!
end type

type st_porcentaje from statictext within w_porcentaje
integer x = 66
integer y = 16
integer width = 1152
integer height = 109
boolean bringtotop = true
integer textsize = -14
integer weight = 700
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "MS Sans Serif"
long textcolor = 8388608
long backcolor = 79741120
boolean enabled = false
alignment alignment = center!
boolean focusrectangle = false
end type

